<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Accelerator Maps</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.74.0">
<link rel="home" href="index.html" title="GTK+ Reference Manual">
<link rel="up" href="gtkbase.html" title="Part II. GTK+ Core Reference">
<link rel="prev" href="gtk-Keyboard-Accelerators.html" title="Accelerator Groups">
<link rel="next" href="gtk-Clipboards.html" title="Clipboards">
<meta name="generator" content="GTK-Doc V1.11 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
<link rel="part" href="gtk.html" title="Part I. GTK+ Overview">
<link rel="part" href="gtkbase.html" title="Part II. GTK+ Core Reference">
<link rel="part" href="gtkobjects.html" title="Part III. GTK+ Widgets and Objects">
<link rel="chapter" href="ch01.html" title="Object Hierarchy">
<link rel="chapter" href="ch02.html" title="Widget Gallery">
<link rel="chapter" href="WindowWidgets.html" title="Windows">
<link rel="chapter" href="DisplayWidgets.html" title="Display Widgets">
<link rel="chapter" href="ButtonWidgets.html" title="Buttons and Toggles">
<link rel="chapter" href="NumericEntry.html" title="Numeric/Text Data Entry">
<link rel="chapter" href="TextWidgetObjects.html" title="Multiline Text Editor">
<link rel="chapter" href="TreeWidgetObjects.html" title="Tree, List and Icon Grid Widgets">
<link rel="chapter" href="MenusAndCombos.html" title="Menus, Combo Box, Toolbar">
<link rel="chapter" href="Actions.html" title="Action-based menus and toolbars">
<link rel="chapter" href="SelectorWidgets.html" title="Selectors (File/Font/Color/Input Devices)">
<link rel="chapter" href="LayoutContainers.html" title="Layout Containers">
<link rel="chapter" href="Ornaments.html" title="Ornaments">
<link rel="chapter" href="ScrollingWidgets.html" title="Scrolling">
<link rel="chapter" href="Printing.html" title="Printing">
<link rel="chapter" href="MiscObjects.html" title="Miscellaneous">
<link rel="chapter" href="AbstractObjects.html" title="Abstract Base Classes">
<link rel="chapter" href="PlugSocket.html" title="Cross-process Embedding">
<link rel="chapter" href="SpecialObjects.html" title="Special-purpose features">
<link rel="chapter" href="RecentDocuments.html" title="Recently Used Documents">
<link rel="chapter" href="Builder.html" title="Interface builder">
<link rel="chapter" href="DeprecatedObjects.html" title="Deprecated">
<link rel="part" href="migrating.html" title="Part IV. Migrating from Previous Versions of GTK+">
<link rel="chapter" href="gtk-migrating-checklist.html" title="Migration Checklist">
<link rel="chapter" href="gtk-migrating-GtkFileChooser.html" title="Migrating from GtkFileSelection to GtkFileChooser">
<link rel="chapter" href="gtk-migrating-GtkAction.html" title="Migrating from old menu and toolbar systems to GtkAction">
<link rel="chapter" href="gtk-migrating-GtkComboBox.html" title="Migrating from GtkOptionMenu and GtkCombo to GtkComboBox and GtkComboBoxEntry">
<link rel="chapter" href="gtk-migrating-GtkIconView.html" title="Migrating from GnomeIconList to GtkIconView">
<link rel="chapter" href="gtk-migrating-GtkAboutDialog.html" title="Migrating from GnomeAbout to GtkAboutDialog">
<link rel="chapter" href="gtk-migrating-GtkColorButton.html" title="Migrating from GnomeColorPicker to GtkColorButton">
<link rel="chapter" href="gtk-migrating-GtkAssistant.html" title="Migrating from GnomeDruid to GtkAssistant">
<link rel="chapter" href="gtk-migrating-GtkRecentChooser.html" title="Migrating from EggRecent to GtkRecentChooser">
<link rel="chapter" href="gtk-migrating-GtkLinkButton.html" title="Migrating from GnomeHRef to GtkLinkButton">
<link rel="chapter" href="gtk-migrating-GtkBuilder.html" title="Migrating from libglade to GtkBuilder">
<link rel="chapter" href="gtk-migrating-tooltips.html" title="Migrating from GtkTooltips to GtkTooltip">
<link rel="part" href="pt05.html" title="Part V. GTK+ Tools">
<link rel="glossary" href="glossary.html" title="Glossary">
<link rel="index" href="api-index-full.html" title="Index of all symbols">
<link rel="index" href="api-index-deprecated.html" title="Index of deprecated symbols">
<link rel="index" href="api-index-2-2.html" title="Index of new symbols in 2.2">
<link rel="index" href="api-index-2-4.html" title="Index of new symbols in 2.4">
<link rel="index" href="api-index-2-6.html" title="Index of new symbols in 2.6">
<link rel="index" href="api-index-2-8.html" title="Index of new symbols in 2.8">
<link rel="index" href="api-index-2-10.html" title="Index of new symbols in 2.10">
<link rel="index" href="api-index-2-12.html" title="Index of new symbols in 2.12">
<link rel="index" href="api-index-2-14.html" title="Index of new symbols in 2.14">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
<tr valign="middle">
<td><a accesskey="p" href="gtk-Keyboard-Accelerators.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
<td><a accesskey="u" href="gtkbase.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
<th width="100%" align="center">GTK+ Reference Manual</th>
<td><a accesskey="n" href="gtk-Clipboards.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
</tr>
<tr><td colspan="5" class="shortcuts">
<a href="#gtk-Accelerator-Maps.synopsis" class="shortcut">Top</a>
                 | 
                <a href="#gtk-Accelerator-Maps.description" class="shortcut">Description</a>
                 | 
                <a href="#gtk-Accelerator-Maps.object-hierarchy" class="shortcut">Object Hierarchy</a>
                 | 
                <a href="#gtk-Accelerator-Maps.signals" class="shortcut">Signals</a>
</td></tr>
</table>
<div class="refentry" lang="en">
<a name="gtk-Accelerator-Maps"></a><div class="titlepage"></div>
<div class="refnamediv"><table width="100%"><tr>
<td valign="top">
<h2><span class="refentrytitle"><a name="gtk-Accelerator-Maps.top_of_page"></a>Accelerator Maps</span></h2>
<p>Accelerator Maps — Loadable keyboard accelerator specifications</p>
</td>
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsynopsisdiv">
<a name="gtk-Accelerator-Maps.synopsis"></a><h2>Synopsis</h2>
<a name="GtkAccelMap"></a><pre class="synopsis">

#include &lt;gtk/gtk.h&gt;

                    <a class="link" href="gtk-Accelerator-Maps.html#GtkAccelMap-struct" title="GtkAccelMap">GtkAccelMap</a>;
void                (<a class="link" href="gtk-Accelerator-Maps.html#GtkAccelMapForeach" title="GtkAccelMapForeach ()">*GtkAccelMapForeach</a>)               (<a
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"
>gpointer</a> data,
                                                         const <a
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
>gchar</a> *accel_path,
                                                         <a
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"
>guint</a> accel_key,
                                                         <a
href="/usr/share/gtk-doc/html/gdk/gdk-Windows.html#GdkModifierType"
>GdkModifierType</a> accel_mods,
                                                         <a
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
>gboolean</a> changed);
void                <a class="link" href="gtk-Accelerator-Maps.html#gtk-accel-map-add-entry" title="gtk_accel_map_add_entry ()">gtk_accel_map_add_entry</a>             (const <a
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
>gchar</a> *accel_path,
                                                         <a
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"
>guint</a> accel_key,
                                                         <a
href="/usr/share/gtk-doc/html/gdk/gdk-Windows.html#GdkModifierType"
>GdkModifierType</a> accel_mods);
<a
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
>gboolean</a>            <a class="link" href="gtk-Accelerator-Maps.html#gtk-accel-map-lookup-entry" title="gtk_accel_map_lookup_entry ()">gtk_accel_map_lookup_entry</a>          (const <a
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
>gchar</a> *accel_path,
                                                         <a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelKey" title="GtkAccelKey">GtkAccelKey</a> *key);
<a
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
>gboolean</a>            <a class="link" href="gtk-Accelerator-Maps.html#gtk-accel-map-change-entry" title="gtk_accel_map_change_entry ()">gtk_accel_map_change_entry</a>          (const <a
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
>gchar</a> *accel_path,
                                                         <a
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"
>guint</a> accel_key,
                                                         <a
href="/usr/share/gtk-doc/html/gdk/gdk-Windows.html#GdkModifierType"
>GdkModifierType</a> accel_mods,
                                                         <a
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
>gboolean</a> replace);
void                <a class="link" href="gtk-Accelerator-Maps.html#gtk-accel-map-load" title="gtk_accel_map_load ()">gtk_accel_map_load</a>                  (const <a
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
>gchar</a> *file_name);
void                <a class="link" href="gtk-Accelerator-Maps.html#gtk-accel-map-save" title="gtk_accel_map_save ()">gtk_accel_map_save</a>                  (const <a
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
>gchar</a> *file_name);
void                <a class="link" href="gtk-Accelerator-Maps.html#gtk-accel-map-foreach" title="gtk_accel_map_foreach ()">gtk_accel_map_foreach</a>               (<a
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"
>gpointer</a> data,
                                                         <a class="link" href="gtk-Accelerator-Maps.html#GtkAccelMapForeach" title="GtkAccelMapForeach ()">GtkAccelMapForeach</a> foreach_func);
void                <a class="link" href="gtk-Accelerator-Maps.html#gtk-accel-map-load-fd" title="gtk_accel_map_load_fd ()">gtk_accel_map_load_fd</a>               (<a
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"
>gint</a> fd);
void                <a class="link" href="gtk-Accelerator-Maps.html#gtk-accel-map-save-fd" title="gtk_accel_map_save_fd ()">gtk_accel_map_save_fd</a>               (<a
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"
>gint</a> fd);
void                <a class="link" href="gtk-Accelerator-Maps.html#gtk-accel-map-load-scanner" title="gtk_accel_map_load_scanner ()">gtk_accel_map_load_scanner</a>          (<a
href="/usr/share/gtk-doc/html/glib/glib-Lexical-Scanner.html#GScanner"
>GScanner</a> *scanner);
void                <a class="link" href="gtk-Accelerator-Maps.html#gtk-accel-map-add-filter" title="gtk_accel_map_add_filter ()">gtk_accel_map_add_filter</a>            (const <a
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
>gchar</a> *filter_pattern);
void                <a class="link" href="gtk-Accelerator-Maps.html#gtk-accel-map-foreach-unfiltered" title="gtk_accel_map_foreach_unfiltered ()">gtk_accel_map_foreach_unfiltered</a>    (<a
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"
>gpointer</a> data,
                                                         <a class="link" href="gtk-Accelerator-Maps.html#GtkAccelMapForeach" title="GtkAccelMapForeach ()">GtkAccelMapForeach</a> foreach_func);
<a class="link" href="gtk-Accelerator-Maps.html#GtkAccelMap">GtkAccelMap</a> *       <a class="link" href="gtk-Accelerator-Maps.html#gtk-accel-map-get" title="gtk_accel_map_get ()">gtk_accel_map_get</a>                   (void);
void                <a class="link" href="gtk-Accelerator-Maps.html#gtk-accel-map-lock-path" title="gtk_accel_map_lock_path ()">gtk_accel_map_lock_path</a>             (const <a
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
>gchar</a> *accel_path);
void                <a class="link" href="gtk-Accelerator-Maps.html#gtk-accel-map-unlock-path" title="gtk_accel_map_unlock_path ()">gtk_accel_map_unlock_path</a>           (const <a
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
>gchar</a> *accel_path);
</pre>
</div>
<div class="refsect1" lang="en">
<a name="gtk-Accelerator-Maps.object-hierarchy"></a><h2>Object Hierarchy</h2>
<pre class="synopsis">
  <a
href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject"
>GObject</a>
   +----GtkAccelMap
</pre>
</div>
<div class="refsect1" lang="en">
<a name="gtk-Accelerator-Maps.signals"></a><h2>Signals</h2>
<pre class="synopsis">
  "<a class="link" href="gtk-Accelerator-Maps.html#GtkAccelMap-changed" title='The "changed" signal'>changed</a>"                                        : Run Last / Has Details
</pre>
</div>
<div class="refsect1" lang="en">
<a name="gtk-Accelerator-Maps.description"></a><h2>Description</h2>
<p>
</p>
</div>
<div class="refsect1" lang="en">
<a name="gtk-Accelerator-Maps.details"></a><h2>Details</h2>
<div class="refsect2" lang="en">
<a name="GtkAccelMap-struct"></a><h3>GtkAccelMap</h3>
<pre class="programlisting">typedef struct _GtkAccelMap GtkAccelMap;</pre>
<p>
</p>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="GtkAccelMapForeach"></a><h3>GtkAccelMapForeach ()</h3>
<pre class="programlisting">void                (*GtkAccelMapForeach)               (<a
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"
>gpointer</a> data,
                                                         const <a
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
>gchar</a> *accel_path,
                                                         <a
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"
>guint</a> accel_key,
                                                         <a
href="/usr/share/gtk-doc/html/gdk/gdk-Windows.html#GdkModifierType"
>GdkModifierType</a> accel_mods,
                                                         <a
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
>gboolean</a> changed);</pre>
<p>
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>data</code></em> :</span></p></td>
<td>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>accel_path</code></em> :</span></p></td>
<td>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>accel_key</code></em> :</span></p></td>
<td>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>accel_mods</code></em> :</span></p></td>
<td>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>changed</code></em> :</span></p></td>
<td>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="gtk-accel-map-add-entry"></a><h3>gtk_accel_map_add_entry ()</h3>
<pre class="programlisting">void                gtk_accel_map_add_entry             (const <a
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
>gchar</a> *accel_path,
                                                         <a
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"
>guint</a> accel_key,
                                                         <a
href="/usr/share/gtk-doc/html/gdk/gdk-Windows.html#GdkModifierType"
>GdkModifierType</a> accel_mods);</pre>
<p>
Registers a new accelerator with the global accelerator map.
This function should only be called once per <em class="parameter"><code>accel_path</code></em>
with the canonical <em class="parameter"><code>accel_key</code></em> and <em class="parameter"><code>accel_mods</code></em> for this path.
To change the accelerator during runtime programatically, use
<a class="link" href="gtk-Accelerator-Maps.html#gtk-accel-map-change-entry" title="gtk_accel_map_change_entry ()"><code class="function">gtk_accel_map_change_entry()</code></a>.
The accelerator path must consist of "&lt;WINDOWTYPE&gt;/Category1/Category2/.../Action",
where &lt;WINDOWTYPE&gt; should be a unique application-specific identifier, that
corresponds to the kind of window the accelerator is being used in, e.g. "Gimp-Image",
"Abiword-Document" or "Gnumeric-Settings".
The Category1/.../Action portion is most appropriately chosen by the action the
accelerator triggers, i.e. for accelerators on menu items, choose the item's menu path,
e.g. "File/Save As", "Image/View/Zoom" or "Edit/Select All".
So a full valid accelerator path may look like:
"&lt;Gimp-Toolbox&gt;/File/Dialogs/Tool Options...".
</p>
<p>
Note that <em class="parameter"><code>accel_path</code></em> string will be stored in a <a
href="/usr/share/gtk-doc/html/glib/glib-Quarks.html#GQuark"
><span class="type">GQuark</span></a>. Therefore, if you
pass a static string, you can save some memory by interning it first with 
<a
href="/usr/share/gtk-doc/html/glib/glib-Quarks.html#g-intern-static-string"
><code class="function">g_intern_static_string()</code></a>.</p>
<p>
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>accel_path</code></em> :</span></p></td>
<td> valid accelerator path
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>accel_key</code></em> :</span></p></td>
<td>  the accelerator key
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>accel_mods</code></em> :</span></p></td>
<td> the accelerator modifiers
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="gtk-accel-map-lookup-entry"></a><h3>gtk_accel_map_lookup_entry ()</h3>
<pre class="programlisting"><a
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
>gboolean</a>            gtk_accel_map_lookup_entry          (const <a
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
>gchar</a> *accel_path,
                                                         <a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelKey" title="GtkAccelKey">GtkAccelKey</a> *key);</pre>
<p>
Looks up the accelerator entry for <em class="parameter"><code>accel_path</code></em> and fills in <em class="parameter"><code>key</code></em>.</p>
<p>
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>accel_path</code></em> :</span></p></td>
<td>  a valid accelerator path
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>key</code></em> :</span></p></td>
<td>         the accelerator key to be filled in (optional)
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>     <a
href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#TRUE--CAPS"
><code class="literal">TRUE</code></a> if <em class="parameter"><code>accel_path</code></em> is known, <a
href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#FALSE--CAPS"
><code class="literal">FALSE</code></a> otherwise
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="gtk-accel-map-change-entry"></a><h3>gtk_accel_map_change_entry ()</h3>
<pre class="programlisting"><a
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
>gboolean</a>            gtk_accel_map_change_entry          (const <a
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
>gchar</a> *accel_path,
                                                         <a
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"
>guint</a> accel_key,
                                                         <a
href="/usr/share/gtk-doc/html/gdk/gdk-Windows.html#GdkModifierType"
>GdkModifierType</a> accel_mods,
                                                         <a
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
>gboolean</a> replace);</pre>
<p>
Changes the <em class="parameter"><code>accel_key</code></em> and <em class="parameter"><code>accel_mods</code></em> currently associated with <em class="parameter"><code>accel_path</code></em>.
Due to conflicts with other accelerators, a change may not always be possible,
<em class="parameter"><code>replace</code></em> indicates whether other accelerators may be deleted to resolve such
conflicts. A change will only occur if all conflicts could be resolved (which
might not be the case if conflicting accelerators are locked). Successful
changes are indicated by a <a
href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#TRUE--CAPS"
><code class="literal">TRUE</code></a> return value.
</p>
<p>
Note that <em class="parameter"><code>accel_path</code></em> string will be stored in a <a
href="/usr/share/gtk-doc/html/glib/glib-Quarks.html#GQuark"
><span class="type">GQuark</span></a>. Therefore, if you
pass a static string, you can save some memory by interning it first with 
<a
href="/usr/share/gtk-doc/html/glib/glib-Quarks.html#g-intern-static-string"
><code class="function">g_intern_static_string()</code></a>.</p>
<p>
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>accel_path</code></em> :</span></p></td>
<td>  a valid accelerator path
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>accel_key</code></em> :</span></p></td>
<td>   the new accelerator key
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>accel_mods</code></em> :</span></p></td>
<td>  the new accelerator modifiers
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>replace</code></em> :</span></p></td>
<td>     <a
href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#TRUE--CAPS"
><code class="literal">TRUE</code></a> if other accelerators may be deleted upon conflicts
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>     <a
href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#TRUE--CAPS"
><code class="literal">TRUE</code></a> if the accelerator could be changed, <a
href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#FALSE--CAPS"
><code class="literal">FALSE</code></a> otherwise
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="gtk-accel-map-load"></a><h3>gtk_accel_map_load ()</h3>
<pre class="programlisting">void                gtk_accel_map_load                  (const <a
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
>gchar</a> *file_name);</pre>
<p>
Parses a file previously saved with <a class="link" href="gtk-Accelerator-Maps.html#gtk-accel-map-save" title="gtk_accel_map_save ()"><code class="function">gtk_accel_map_save()</code></a> for
accelerator specifications, and propagates them accordingly.</p>
<p>
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody><tr>
<td><p><span class="term"><em class="parameter"><code>file_name</code></em> :</span></p></td>
<td> a file containing accelerator specifications,
  in the GLib file name encoding
</td>
</tr></tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="gtk-accel-map-save"></a><h3>gtk_accel_map_save ()</h3>
<pre class="programlisting">void                gtk_accel_map_save                  (const <a
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
>gchar</a> *file_name);</pre>
<p>
Saves current accelerator specifications (accelerator path, key
and modifiers) to <em class="parameter"><code>file_name</code></em>.
The file is written in a format suitable to be read back in by
<a class="link" href="gtk-Accelerator-Maps.html#gtk-accel-map-load" title="gtk_accel_map_load ()"><code class="function">gtk_accel_map_load()</code></a>.</p>
<p>
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody><tr>
<td><p><span class="term"><em class="parameter"><code>file_name</code></em> :</span></p></td>
<td> the name of the file to contain accelerator specifications,
  in the GLib file name encoding
</td>
</tr></tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="gtk-accel-map-foreach"></a><h3>gtk_accel_map_foreach ()</h3>
<pre class="programlisting">void                gtk_accel_map_foreach               (<a
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"
>gpointer</a> data,
                                                         <a class="link" href="gtk-Accelerator-Maps.html#GtkAccelMapForeach" title="GtkAccelMapForeach ()">GtkAccelMapForeach</a> foreach_func);</pre>
<p>
Loops over the entries in the accelerator map whose accel path 
doesn't match any of the filters added with <a class="link" href="gtk-Accelerator-Maps.html#gtk-accel-map-add-filter" title="gtk_accel_map_add_filter ()"><code class="function">gtk_accel_map_add_filter()</code></a>, 
and execute <em class="parameter"><code>foreach_func</code></em> on each. The signature of <em class="parameter"><code>foreach_func</code></em> is 
that of <a class="link" href="gtk-Accelerator-Maps.html#GtkAccelMapForeach" title="GtkAccelMapForeach ()"><span class="type">GtkAccelMapForeach</span></a>, the <em class="parameter"><code>changed</code></em> parameter indicates whether
this accelerator was changed during runtime (thus, would need
saving during an accelerator map dump).</p>
<p>
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>data</code></em> :</span></p></td>
<td>         data to be passed into <em class="parameter"><code>foreach_func</code></em>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>foreach_func</code></em> :</span></p></td>
<td> function to be executed for each accel map entry which
               is not filtered out
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="gtk-accel-map-load-fd"></a><h3>gtk_accel_map_load_fd ()</h3>
<pre class="programlisting">void                gtk_accel_map_load_fd               (<a
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"
>gint</a> fd);</pre>
<p>
Filedescriptor variant of <a class="link" href="gtk-Accelerator-Maps.html#gtk-accel-map-load" title="gtk_accel_map_load ()"><code class="function">gtk_accel_map_load()</code></a>.
</p>
<p>
Note that the file descriptor will not be closed by this function.</p>
<p>
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody><tr>
<td><p><span class="term"><em class="parameter"><code>fd</code></em> :</span></p></td>
<td> a valid readable file descriptor
</td>
</tr></tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="gtk-accel-map-save-fd"></a><h3>gtk_accel_map_save_fd ()</h3>
<pre class="programlisting">void                gtk_accel_map_save_fd               (<a
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"
>gint</a> fd);</pre>
<p>
Filedescriptor variant of <a class="link" href="gtk-Accelerator-Maps.html#gtk-accel-map-save" title="gtk_accel_map_save ()"><code class="function">gtk_accel_map_save()</code></a>.
</p>
<p>
Note that the file descriptor will not be closed by this function.</p>
<p>
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody><tr>
<td><p><span class="term"><em class="parameter"><code>fd</code></em> :</span></p></td>
<td> a valid writable file descriptor
</td>
</tr></tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="gtk-accel-map-load-scanner"></a><h3>gtk_accel_map_load_scanner ()</h3>
<pre class="programlisting">void                gtk_accel_map_load_scanner          (<a
href="/usr/share/gtk-doc/html/glib/glib-Lexical-Scanner.html#GScanner"
>GScanner</a> *scanner);</pre>
<p>
<a
href="/usr/share/gtk-doc/html/glib/glib-Lexical-Scanner.html#GScanner"
><span class="type">GScanner</span></a> variant of <a class="link" href="gtk-Accelerator-Maps.html#gtk-accel-map-load" title="gtk_accel_map_load ()"><code class="function">gtk_accel_map_load()</code></a>.</p>
<p>
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody><tr>
<td><p><span class="term"><em class="parameter"><code>scanner</code></em> :</span></p></td>
<td> a <a
href="/usr/share/gtk-doc/html/glib/glib-Lexical-Scanner.html#GScanner"
><span class="type">GScanner</span></a> which has already been provided with an input file
</td>
</tr></tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="gtk-accel-map-add-filter"></a><h3>gtk_accel_map_add_filter ()</h3>
<pre class="programlisting">void                gtk_accel_map_add_filter            (const <a
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
>gchar</a> *filter_pattern);</pre>
<p>
Adds a filter to the global list of accel path filters.
</p>
<p>
Accel map entries whose accel path matches one of the filters
are skipped by <a class="link" href="gtk-Accelerator-Maps.html#gtk-accel-map-foreach" title="gtk_accel_map_foreach ()"><code class="function">gtk_accel_map_foreach()</code></a>.
</p>
<p>
This function is intended for GTK+ modules that create their own
menus, but don't want them to be saved into the applications accelerator
map dump.</p>
<p>
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody><tr>
<td><p><span class="term"><em class="parameter"><code>filter_pattern</code></em> :</span></p></td>
<td> a pattern (see <a
href="/usr/share/gtk-doc/html/glib/glib-Glob-style-pattern-matching.html#GPatternSpec"
><span class="type">GPatternSpec</span></a>)
</td>
</tr></tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="gtk-accel-map-foreach-unfiltered"></a><h3>gtk_accel_map_foreach_unfiltered ()</h3>
<pre class="programlisting">void                gtk_accel_map_foreach_unfiltered    (<a
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"
>gpointer</a> data,
                                                         <a class="link" href="gtk-Accelerator-Maps.html#GtkAccelMapForeach" title="GtkAccelMapForeach ()">GtkAccelMapForeach</a> foreach_func);</pre>
<p>
Loops over all entries in the accelerator map, and execute
<em class="parameter"><code>foreach_func</code></em> on each. The signature of <em class="parameter"><code>foreach_func</code></em> is that of
<a class="link" href="gtk-Accelerator-Maps.html#GtkAccelMapForeach" title="GtkAccelMapForeach ()"><span class="type">GtkAccelMapForeach</span></a>, the <em class="parameter"><code>changed</code></em> parameter indicates whether
this accelerator was changed during runtime (thus, would need
saving during an accelerator map dump).</p>
<p>
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>data</code></em> :</span></p></td>
<td>         data to be passed into <em class="parameter"><code>foreach_func</code></em>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>foreach_func</code></em> :</span></p></td>
<td> function to be executed for each accel map entry
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="gtk-accel-map-get"></a><h3>gtk_accel_map_get ()</h3>
<pre class="programlisting"><a class="link" href="gtk-Accelerator-Maps.html#GtkAccelMap">GtkAccelMap</a> *       gtk_accel_map_get                   (void);</pre>
<p>
Gets the singleton global <a class="link" href="gtk-Accelerator-Maps.html#GtkAccelMap"><span class="type">GtkAccelMap</span></a> object. This object
is useful only for notification of changes to the accelerator
map via the ::changed signal; it isn't a parameter to the
other accelerator map functions.</p>
<p>
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody><tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td> the global <a class="link" href="gtk-Accelerator-Maps.html#GtkAccelMap"><span class="type">GtkAccelMap</span></a> object

</td>
</tr></tbody>
</table></div>
<p class="since">Since 2.4</p>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="gtk-accel-map-lock-path"></a><h3>gtk_accel_map_lock_path ()</h3>
<pre class="programlisting">void                gtk_accel_map_lock_path             (const <a
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
>gchar</a> *accel_path);</pre>
<p>
Locks the given accelerator path. If the accelerator map doesn't yet contain
an entry for <em class="parameter"><code>accel_path</code></em>, a new one is created.
</p>
<p>
Locking an accelerator path prevents its accelerator from being changed 
during runtime. A locked accelerator path can be unlocked by 
<a class="link" href="gtk-Accelerator-Maps.html#gtk-accel-map-unlock-path" title="gtk_accel_map_unlock_path ()"><code class="function">gtk_accel_map_unlock_path()</code></a>. Refer to <a class="link" href="gtk-Accelerator-Maps.html#gtk-accel-map-change-entry" title="gtk_accel_map_change_entry ()"><code class="function">gtk_accel_map_change_entry()</code></a> 
for information about runtime accelerator changes.
</p>
<p>
If called more than once, <em class="parameter"><code>accel_path</code></em> remains locked until
<a class="link" href="gtk-Accelerator-Maps.html#gtk-accel-map-unlock-path" title="gtk_accel_map_unlock_path ()"><code class="function">gtk_accel_map_unlock_path()</code></a> has been called an equivalent number
of times.
</p>
<p>
Note that locking of individual accelerator paths is independent from 
locking the <a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> containing them. For runtime accelerator
changes to be possible both the accelerator path and its <a class="link" href="gtk-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a>
have to be unlocked.</p>
<p>
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody><tr>
<td><p><span class="term"><em class="parameter"><code>accel_path</code></em> :</span></p></td>
<td> a valid accelerator path
</td>
</tr></tbody>
</table></div>
<p class="since">Since 2.4</p>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="gtk-accel-map-unlock-path"></a><h3>gtk_accel_map_unlock_path ()</h3>
<pre class="programlisting">void                gtk_accel_map_unlock_path           (const <a
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
>gchar</a> *accel_path);</pre>
<p>
Undoes the last call to <a class="link" href="gtk-Accelerator-Maps.html#gtk-accel-map-lock-path" title="gtk_accel_map_lock_path ()"><code class="function">gtk_accel_map_lock_path()</code></a> on this <em class="parameter"><code>accel_path</code></em>.
Refer to <a class="link" href="gtk-Accelerator-Maps.html#gtk-accel-map-lock-path" title="gtk_accel_map_lock_path ()"><code class="function">gtk_accel_map_lock_path()</code></a> for information about accelerator path locking.</p>
<p>
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody><tr>
<td><p><span class="term"><em class="parameter"><code>accel_path</code></em> :</span></p></td>
<td> a valid accelerator path
</td>
</tr></tbody>
</table></div>
<p class="since">Since 2.4</p>
</div>
</div>
<div class="refsect1" lang="en">
<a name="gtk-Accelerator-Maps.signal-details"></a><h2>Signal Details</h2>
<div class="refsect2" lang="en">
<a name="GtkAccelMap-changed"></a><h3>The <code class="literal">"changed"</code> signal</h3>
<pre class="programlisting">void                user_function                      (<a class="link" href="gtk-Accelerator-Maps.html#GtkAccelMap">GtkAccelMap</a>    *object,
                                                        <a
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
>gchar</a>          *accel_path,
                                                        <a
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"
>guint</a>           accel_key,
                                                        <a
href="/usr/share/gtk-doc/html/gdk/gdk-Windows.html#GdkModifierType"
>GdkModifierType</a> accel_mods,
                                                        <a
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"
>gpointer</a>        user_data)       : Run Last / Has Details</pre>
<p>
Notifies of a change in the global accelerator map.
The path is also used as the detail for the signal,
so it is possible to connect to
changed::<em class="replaceable"><code>accel_path</code></em>.</p>
<p>
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
<td> the global accel map object
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>accel_path</code></em> :</span></p></td>
<td> the path of the accelerator that changed
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>accel_key</code></em> :</span></p></td>
<td> the key value for the new accelerator
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>accel_mods</code></em> :</span></p></td>
<td> the modifier mask for the new accelerator
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
<td>user data set when the signal handler was connected.</td>
</tr>
</tbody>
</table></div>
<p>Since 2.4</p>
</div>
</div>
</div>
<div class="footer">
<hr>
          Generated by GTK-Doc V1.11</div>
</body>
</html>
